Digital phase locked loop for low jitter applications

ABSTRACT

A phase locked loop circuit is disclosed. The phase locked loop circuit includes a ring oscillator. The phase locked loop circuit also includes a digital path including a digital phase detector. The phase locked loop circuit further includes an analog path including a linear phase detector. Additionally, the phase locked loop circuit includes a feedback path connecting an output of the ring oscillator to an input of the digital path and an input of the analog path. The digital path and the analog path are parallel paths. The digital path provides a digital tuning signal the ring oscillator that digitally controls a frequency of the ring oscillator. The analog path provides an analog tuning signal the ring oscillator that continuously controls the frequency of the ring oscillator.

FIELD OF INVENTION

This application relates generally to phase-locked loops (PLLs) and,more particularly, to hybrid ring PLL circuits.

BACKGROUND

A phase-locked loop (PLL) is an electronic circuit with an oscillatorhaving an output that is constantly modified to match the frequency andphase of an input from another oscillator. In a phase-locked loop (PLL),a phase frequency detector compares the phase and frequency of aperiodic signal (e.g., a clock) that is output by a variable frequencyoscillator to the phase and frequency of a periodic input signal (i.e.,a reference signal). Based on the comparison, the PLL adjusts thevariable frequency oscillator to establish and maintain a constant phaserelationship between the output signal and the input signal. Once thephase difference between the two signals becomes substantially constant,the PLL is said to be “in lock.”

SUMMARY

In an aspect of the invention, there is a phase locked loop circuitincluding a ring oscillator. The phase locked loop circuit also includesa digital path including a digital phase detector. The phase locked loopcircuit further includes an analog path including a linear phasedetector. Additionally, the phase locked loop circuit includes afeedback path connecting an output of the ring oscillator to the digitalpath and to the analog path. The digital path and the analog path areparallel paths. The digital path provides a digital tuning signal to thering oscillator that digitally controls a frequency of the ringoscillator. The analog path provides an analog tuning signal to the ringoscillator that continuously controls the frequency of the ringoscillator.

In further aspects of the invention, there is ring oscillator includingoscillator elements. The ring oscillator also includes adigitally-controlled portion configured to change frequency based on adigital input. The ring oscillator further includes aproportionally-controlled portion configured to change frequency basedon an analog input. The digital input and analog input are parallelinputs of the ring oscillator.

In further aspects, there is a method in a computer-aided design systemfor generating a functional design model of a ring oscillator. Themethod includes generating a functional representation of an array ofoscillator elements. The method also includes generating a functionalrepresentation of a digitally-controlled device connected to the arrayand configured to selectively activate a plurality of the oscillatorelements based on a digital tuning signal. The method further includesgenerating a functional representation of one or moreproportionally-controlled devices connected to the array and configuredto change frequency continuously based on an analog tuning input.

In another aspect of the invention, a design structure tangibly embodiedin a machine readable storage medium for designing, manufacturing, ortesting an integrated circuit is provided. The design structurecomprises structures for a ring oscillator circuit. In furtherembodiments, a hardware description language (HDL) design structureencoded on a machine-readable data storage medium comprises elementsthat when processed in a computer-aided design system generates amachine-executable representation of structures for the ring oscillatorcircuit. In still further embodiments, a method in a computer-aideddesign system is provided for generating a functional design model ofstructures for the ring oscillator circuit. The method comprisesgenerating a functional representation of structures for the ringoscillator circuit.

BRIEF DESCRIPTION OF THE SEVERAL VIEWS OF THE DRAWINGS

The present invention is described in the detailed description thatfollows, in reference to the noted plurality of drawings by way ofnon-limiting examples of exemplary embodiments of the present invention.

FIG. 1 shows an exemplary all-digital PLL circuit;

FIG. 2 shows an exemplary hybrid inductor-capacitor (“LC”) tank PLLcircuit;

FIG. 3 shows an exemplary hybrid ring PLL circuit in accordance withaspects of the invention;

FIG. 4 shows an exemplary analog path and ring oscillator in accordancewith aspects of the invention;

FIG. 5 shows an exemplary hybrid ring PLL circuit in accordance withaspects of the invention;

FIG. 6 shows an exemplary hybrid ring oscillator circuit in accordancewith aspects of the invention;

FIG. 7 shows an exemplary ring oscillator circuit in accordance withaspects of the invention;

FIG. 8 shows an exemplary current-starved inverter in accordance withaspects of the invention;

FIG. 9 shows an exemplary ring oscillator circuit in accordance withaspects of the invention;

FIG. 10 shows an exemplary ring oscillator circuit in accordance withaspects of the invention;

FIG. 11 shows an exemplary process flow in accordance with aspects ofthe invention;

FIG. 12 shows an exemplary process flow in accordance with aspects ofthe invention; and

FIG. 13 shows a flow diagram of a design process used in semiconductordesign, manufacture, and/or test.

DETAILED DESCRIPTION

This application relates generally to phase-locked loops (PLLs) and,more particularly, to hybrid ring PLL circuits. Purely analog PLLs havecomplicated correction paths and large footprints that consumesubstantial area on semiconductor chips. Purely digital PLLs (e.g.,built with complementary metal oxide semiconductor (CMOS) technology)have many advantages in comparison to analog PLLs, such as smallfootprints and extensive programmability. However, digital phasefrequency detectors provide quantized phase error correction that canresult in significantly higher phase jitter than analog PLLs. Inaccordance with aspects of the invention, there is a digital PLLincluding an analog correction path that reduces phase jitter whilemaintaining the advantages of the digital design.

FIG. 1 shows an exemplary all-digital PLL circuit 100 including adigital phase detector 107, a filter 109 and digitally controlledoscillator (DCO) 111. The digital phase detector 107 can be a bang-bangphase detector (i.e., an Alexander phase detector). The digital phasedetector 107 receives a reference signal 115 and a feedback signal 119,and generates a signal indicating whether the reference signal 115 isleads or trails (i.e., precedes or succeeds) the feedback signal 119.The reference signal 115 can be any type of periodic signal (e.g., aclock signal). The filter 109 integrates the output of the phasedetector 107 and produces a digital tuning signal 121, which is acontrol voltage for the digitally controlled oscillator 111. The digitalphase detector 107 and the filter 109 form a digital path 117 betweenthe reference signal 115 and the digitally-controlled oscillator 111.The digitally controlled oscillator 111 generates an output signal 123having a frequency that depends on the voltage of the digital tuningsignal 121. The output signal 123 is fed back to the digital phasedetector 107 via feedback path 127 that can include a frequency divider131, which generates the feedback signal 119.

In comparison to analog PLL circuits, the all-digital PLL circuit 100has a simple structure and a smaller footprint when incorporated intosemiconductor chips. However, the all-digital PLL circuit 100 hasdisadvantages. For example, the output of the all-digital phase detector107 is either ‘0’ or ‘1’ for a cycle of the reference signal 115. Assuch, the phase correction of the all-digital phase detector 107 is notproportional to the phase error between reference signal 115 andfeedback signal 119. Further, the all-digital PLL circuit 100 has largephase jitter in comparison to analog PLLs. Moreover, the all-digitalphase detector 107 gain is noise dependent such that the dynamicstability of the PLL circuit 100 changes in different noiseenvironments.

FIG. 2 shows an exemplary hybrid LC tank PLL circuit 200. The hybrid LCtank PLL circuit 200 includes the digital path 117 and the feedback path127, which are substantially the same or similar to those shown inFIG. 1. Additionally, the hybrid LC tank PLL circuit 200 includes ananalog path 205 and a LC (inductance-capacitance) oscillator 211. Theanalog path 205 and the digital path 117 receive the reference signal115 and the feedback signal 119. Based on those signals, the hybrid LCtank PLL circuit 100 provides an analog tuning signal 207 and thedigital tuning signal 121, respectively, as inputs to the LC oscillator211. The LC oscillator 211 generates the output signal 123. The outputsignal 123 is fed back to the analog path 205 and the digital path 117via the feedback path 127.

The analog path 205 includes a linear phase detector 209 andproportional gain device 210. The linear phase detector 209 determinesthe phase difference between the reference signal 115 and the feedbacksignal 119. For example, the linear phase detector 209 can include aHogge phase detector that produces two pulses having widths that modifyin relation to the phase difference. The proportional gain device 210receives the output from the linear phase detector 209 and generates theanalog tuning signal 207 having a voltage that is proportional to thephase difference between the reference signal 115 and the feedbacksignal 119. In embodiments, the proportional gain device 210 receives upand down pulses output from the linear phase detector 209 that areproportional to phase difference between reference signal 115 andfeedback signal 119. For example, the up and down pulses control chargepumps which charge or discharge a capacitor device C node inside theproportional gain device 210. V_(cm) is a common mode voltage, whichonly allows the voltage of the capacitor device C to move around it. Theanalog tuning signal 207 generated by the proportional gain device 210is output to the LC oscillator 211 to tune (i.e., modify) the frequencyof oscillation.

The output signal 123 produced by the hybrid LC tank PLL circuit 200includes very low jitter in comparison with an all-digital PLL circuit(e.g., PLL circuit 100). However, the hybrid LC tank PLL circuit 200 isrelatively large and costly. As such, the hybrid LC tank PLL circuit 200is typically used in applications in which low jitter is paramount(e.g., serialization/deserialization), but not in other applications,such as frequency synthesis and clocks.

FIG. 3 shows an exemplary hybrid ring PLL circuit 300 in accordance withaspects of the invention. The hybrid ring oscillator circuit 300includes the digital path 117, the analog path 305, and the feedbackpath 127. The digital path 117 and the feedback path 127 that are thesubstantially the same or similar to those described above with regardto FIGS. 1 and 2. Additionally, the hybrid ring PLL circuit 300 includesa mixed mode controlled ring oscillator 311 (i.e., “ring oscillator”).The digital path 117 and the analog path 205 simultaneously control thefrequency of the ring oscillator 311. In accordance with aspects of theinvention, the digital path 117 discretely (i.e., digitally) controlsthe frequency of the ring oscillator 311, and the analog path 205progressively (i.e., continuously) controls the frequency of the ringoscillator 311.

FIG. 4 shows the analog path 305 and the ring oscillator 311 of thehybrid ring PLL circuit 300 in accordance with aspects of the invention.In embodiments, the analog path 305 includes the linear phase detector209, which is the same or similar to that described with respect to FIG.2. Further, the ring oscillator 311 includes analog control logic 313and a ring oscillator array 317. The analog control logic 313 is adevice including hardware, software, or a combination thereof thatdetermines control signals 316A and 316B for modifying the frequency ofthe ring oscillator 311 based on the analog tuning voltage 207 output bythe linear phase detector 209.

In accordance with aspects of the invention, the ring oscillator array317 is an array of oscillator elements 319 in which there are three ormore rows and three or more columns. While FIG. 3 illustrates theoscillator elements 319 using a conventional symbol for an inverter, theoscillator elements 319 can be inverters, stacked inverters, capacitors,or resistors. In the example shown in FIG. 3, the ring oscillator array311 is 3-by-3 array. However, embodiments of the invention can usearrays of other sizes.

In accordance with aspects of the invention, two or more of rows 321A,321B and 321C of the oscillator elements 319 are selectively controlledby the control signals 316A and 316B to turn on/off (i.e.,activate/deactivate), thereby changing the frequency at which the ringoscillator 311 oscillates. In embodiments, the analog control logic 313determines the control signals 316A and 316B based on analog tuningsignal 207. The control signal 316A can selectively activate/deactivatea first row 321A of the ring oscillator 311. The control signal 316B canselectively activate/deactivate a second row 321B of the ring oscillator311. By selectively activating/deactivating the oscillator elements 319in the ring oscillator 311, the control logic changes the fill factor ofthe ring oscillator 311. The fill factor is a proportion of activeoscillator elements in the ring oscillator 311. Put another way, thefill factor is the ratio of active oscillator elements 319 to the totalnumber of oscillator elements 319 in the array. For example, if thethree inverters in row 321A are deactivated, six of the nine oscillatorelements 319 in the ring oscillator 311 are active. As such, the fillfactor would be 0.67 (i.e., 6/9). The frequency of the of the ringoscillator array 311 increases in proportion to the number of activeoscillator elements 319, which modifies the oscillation frequency of thering oscillator 311.

In accordance with aspects of the invention, the analog control logic313 receives the analog tuning signal 207 from the linear phase detector209, which indicates whether to increase or decrease the frequency ofthe ring oscillator 311 (i.e., whether the reference signal 115 leads ortrails the feedback signal 119). Based on the analog tuning signal 207,the analog control logic 313 determines control signal 316A and controlsignal 316B. If the reference signal 115 and the feedback signal 119 arelocked, then the control logic can set control signal 316A and controlsignal 316B to maintain their current state. For example, in the currentstate of the ring oscillator 311 set by the control logic, theoscillator elements 319 in row 321A can be “on” and the oscillatorelements 319 in row 321B can be “off.” As such, to maintain the currentfrequency of the ring oscillator 311, the analog control logic 313 setscontrol signal 316A to a high logic state to keep the oscillatorelements 319 in row 321A on and sets control signal 316B to a low logicstate to keep the oscillator elements 319 in row 321B off. On the otherhand, if the reference signal 115 is leading the feedback signal 119,then the analog control logic 313 sets the control signal 316A and thecontrol signal 316 B to a high logic state that activates the oscillatorelements 319 in rows 321A and 321B, such that the frequency of the ringoscillator 311 increases. Alternatively, if the reference signal 115 istrailing the feedback signal 119, then the analog control logic 313 setsthe control signal 316A and the control signal 316B to a low logic statethat deactivates the oscillator elements 319 in rows 321A and 321B, suchthat the frequency of the ring oscillator 311 decreases.

The embodiment illustrated in FIG. 4 is an example and there are otherembodiments consistent with aspects of the invention that provide moregranular control of the fill factor. For example, in embodiments, ringoscillator 311 may be a larger array of oscillator elements 319.Additionally or alternatively, embodiments of the analog control logic313 can generate a greater number of control signals, such as controlsignals 316A and 316B, which control respective rows of the ringoscillator 311. Further, in embodiments, the control signals can controlindividual ones of the oscillator elements 319 instead of entire rows.

FIG. 5 shows an exemplary hybrid ring PLL circuit 500 in accordance withaspects of the invention. The hybrid ring PLL circuit 500 includes adigital path 501, an analog path 503, feedback path 505, and a ringoscillator 509 that are arranged in the same or similar manner to thoseshown in FIG. 2. In accordance with aspects of the invention, thedigital path 501 and the analog path 503 are parallel paths thatgenerate a digital tuning signal 523, and an analog tuning signal 525,respectively, which simultaneously control the frequency of the ringoscillator 509. The digital path 501 discretely (i.e., digitally)controls the frequency of the ring oscillator 509, and the analog path503 progressively (i.e., continuously) controls the frequency of thering oscillator 509.

In embodiments, the digital path 501 includes a digital phase detector527, an integral gain device 531, and an integrator 535. The digitalphase detector 527 can be the same or similar to that shown in FIGS. 1-4(i.e., digital phase detector 107). The integral gain device 531 can be,for example, a counter step value, which determines how fast theintegrator accumulates. The integrator 535 functions as a filter (e.g.,filter 109) that generates the digital tuning signal 523 by smoothingthe signals output from the integral gain device 531.

In accordance with aspects of the invention, the analog path 503includes a linear phase detector 539 and a proportional gain device 543,which can be the same or similar to those shown in FIG. 2 (i.e., linearphase detector 209 and proportional gain device 210). That is, thelinear phase detector 539 can determine whether the reference signal 115leads or lags the feedback signal 119. Based on the determination, thelinear phase detector 539 generates one or more outputs that areproportional to the phase difference. The proportional gain device 543receives the output from the linear phase detector 539 and generates theanalog tuning signal 525 having a voltage that is proportional to thephase difference between the reference signal 115 and the feedbacksignal 119.

FIG. 6 illustrates an exemplary embodiment of the hybrid ring oscillatorcircuit 509 in accordance with aspects of the invention. In embodiments,the ring oscillator circuit 509 can include digital control logic 547,varactors 551, and a ring oscillator array 555. The ring oscillatorarray 555 can be similar to that shown in FIG. 4 (i.e., ring oscillatorarray 317). In the example shown in FIG. 6, the ring oscillator array555 is 5-by-3 array of oscillator elements 559. However, arrays of othersizes can be used. Also, while FIG. 6 illustrates the oscillatorelements 559 using a conventional symbol for an inverter, the oscillatorelements 559 can inverters, stacked inverters, capacitors, or resistors.

In accordance with aspects of the invention, the digital control logic547 discretely modifies the oscillation frequency of the ring oscillator509 based on the digital tuning signal 523. In embodiments, the digitalcontrol logic 547 is a device including hardware, software, or acombination thereof that dynamically controls the fill ratio of the ringoscillator array 555 based the digital tuning signal 523 from thedigital path 501. In accordance with aspects of the invention, thedigital control logic 547 selectively turns on/off (i.e.,activates/deactivates) oscillator elements 559 rows of the ringoscillator array 555 to control the fill factor (i.e., the proportion ofactive oscillator elements) and, thereby, the frequency of oscillation.For example, the digital tuning signal 523 can include a number ofdigital logic signals indicating a phase difference between two signals(e.g., reference signal 115 and feedback signal 119). The digitalcontrol logic 547 can include logic that interprets digital logicsignals and, based on the determination, selectively activates theoscillator elements 559. In embodiments, each output of the digitalcontrol logic 547 activates/deactivates a respective row of the ringoscillator 509. Alternatively, the digital control logic 547 can addresseach oscillator element 559 to activate/deactivate them individually.

In accordance with aspects of the invention, the varactors 551progressively modify the oscillation frequency of the ring oscillatorarray 555 based on the analog tuning signal 525. The varactors 551 arevoltage-controlled devices having capacitances that are proportional tothe analog voltage of analog tuning signal 525 from the analog path 503.According to aspects of the invention, each column of oscillatorelements 559 in the ring oscillator array 555 is connected to arespective one of the varactors 551. The capacitance of the varactors551 loads the oscillator elements 559 of its corresponding column. Asthe capacitance of the varactors 551 increases due to voltage of theanalog tuning signal 525, the frequency of the ring oscillator array 555decreases. Thus, the frequency of the oscillator ring 509 can becontrolled by the analog tuning signal 525.

In accordance with aspects of the invention, the digital tuning signal523 and the analog tuning signal 525 modify the frequency of the output123 of the ring oscillator array 555 simultaneously. That is, increasingthe voltage of the analog tuning signal 525 (e.g., between 0.0 V and 1.0V) provides a corresponding shift in the frequency of the ringoscillator array 555. Further, at any given voltage of the digitaltuning signal 523, the frequency of the ring oscillator array 555increases substantially linearly (e.g., from 0 GHz to 40 GHz) inrelation to the fill factor (e.g., from 0% to 100%).

FIG. 7 illustrates an exemplary embodiment of the hybrid ring oscillatorcircuit 509 in accordance with aspects of the invention. In embodiments,the ring oscillator circuit 509 can include the digital control logic547, the ring oscillator array 555, and current-starved inverters 563.The digital control logic 547 and the ring oscillator array 555 can bethe same or similar to those shown in FIG. 6.

In accordance with aspects of the invention, the current-starvedinverters 563 continuously modify the oscillation frequency of theoutput 123 of the ring oscillator 509 based on the analog tuning signal525. In embodiments, the analog tuning signal 525 provides a supplyvoltage to the current-starved inverters 563 that modifies their supplycurrent in relation to the analog tuning signal 525. For example, as theanalog tuning signal 525 decreases, the output voltages of thecurrent-starved inverters 563 decreases proportionally due to reducedsupply voltage, which reduces the frequency of the output 123 of thering oscillator array 555.

In accordance with aspects of the invention, the digital tuning signal523 and the analog tuning signal 525 modify the frequency of the output123 of the ring oscillator array 555 simultaneously. As the analogtuning signal 525 increases (e.g., between 0.0 V and 1.0 volts), thefrequency of the ring oscillator array 555 increases substantiallylinearly (e.g., from 0 GHz to 15 GHz). Moreover, as the digital tuningsignal 523 increases, the fill factor (i.e., the ratio between thenumber of “on” oscillator elements 559 and the total number ofoscillator elements 559) of the ring oscillator array 555 increases,which shifts the frequency of the frequency of the ring oscillator array555 higher/lower proportionally. For example, an exemplaryimplementation of ring oscillator array 555 can have a three-by-threearray of inverters, wherein the oscillator elements 559 in the first rowof the array are turned off based on the digital tuning signal 523, asecond row of the array is turned on based on the digital tuning signal523, and a third row of the array are current-starved inverters 563.Thus, the fill factor between the number of current staved inverters andthe total number of on/off inverters modifies among 0.00, 0.33, 0.50,0.66, and 1.00, as each row is activated or deactivated by the digitaltuning signal 523.

FIG. 8 shows an example of a current-starved inverter 563 in accordancewith aspects of the invention. In embodiments, the current-starvedinverter 563 includes PFET 565P, PFET 567P and complementary NFET 565Nand NFET 567N, which are configured as an inverter device. An input node571 receives an input logic signal. For example, in accordance withaspects of the invention, the input node 507 can receive an input signalfrom, for example, an output of one or more of the inverters (e.g.,oscillator elements 559) of a ring oscillator (e.g., ring oscillatorarray 555). PFET 567P and complementary NFET 567N are configured as aninverter having an output node 575 that outputs an output logic signalthat is the inverse of the input logic signal.

There is a delay between the time the input received at the input node571 changes state (e.g., from low logic to high logic) and the time atwhich the output at the output node 575 changes state (e.g., from highlogic to low logic). In accordance with aspects of the invention, thedelay modifies in proportion to the analog tuning signal 525. Inembodiments, the voltage-starved inverter 559 receives analog tuningsignal 525, which modifies that delay. For example, a control node 579Preceives analog tuning signal 525P, which is the same as the analogtuning signal 525, but inverted, and control node 579N receives analogtuning signal 525N, which is the same as analog tuning signal 525.Control nodes 579P and 579N supply analog tuning signal 525P and 525N tothe gates of PFET 565P and NFET 565N, respectively. Because the voltageprovided to the bases of PFET 565P and NFET 565N changes due tovariations in the analog tuning signal 525, the current passing throughPFET 563P and NFET 563 from their voltage supplies (V, Gnd) varies basedon the analog tuning signal 525. When the analog tuning signal 525decreases, it “starves” the current provided to 567P and 567N, whichmodifies delay of the current-starved inverter 563 in accordance withaspects of the invention.

FIG. 9 illustrates a hybrid ring oscillator circuit 509 in accordancewith aspects of the invention. In embodiments, the hybrid ringoscillator circuit 509 includes the digital control logic 547, the ringoscillator array 555, and current-starved inverters 579. The digitalcontrol logic 547 and ring oscillator 555 may be the same or similar tothose FIG. 6.

In accordance with aspects of the invention, the current-starvedinverters 579 modify the oscillation frequency of the ring oscillator509 based on the analog tuning signal 525. In embodiments, the analogtuning signal 525 provides a supply voltage to the voltage-controlledcurrent sources 583 that modifies the supply current of thecurrent-starved inverters 579 in relation to the voltage of the analogtuning signal 525. In accordance with aspects of the invention, theanalog tuning signal 525 provides a supply voltage to the currentsources 583, which modifies the current drawn from supply lines of thecurrent-starved inverters 579 to starve their current and, thereby,modify their delay to modify frequency of output 123.

In accordance with aspects of the invention, the digital tuning signal523 and the analog tuning signal 525 modify the frequency of the output123 of the ring oscillator array 555 simultaneously. As the proportionalinput 525 increases, the frequency of the ring oscillator array 555increases substantially linearly due to the increased output of thecurrent-starved inverters 579. Additionally, as the digital tuningsignal 523 increases, the fill factor increases the frequency of thering oscillator array 555 higher/lower proportionally.

FIG. 10 shows a ring oscillator circuit 509 in accordance with aspectsof the invention. The ring oscillator 509 includes oscillator elements705, digital control logic 707, and resistor devices 709 arranged inseries along a forward path 710. In embodiments, each oscillator element705 has a respective resistor device 709 connected at its output. Afeedback path 711 connects the output of the last element in the forwardpath 710 to the input of the first element of the forward path 710. Forexample, the output of the last resistor device 707 in the forward path710 to the input of the first oscillator element 705 in the forward path710. For the sake of simplicity, two pairs of oscillator elements 705and resistor devices 709 are shown in FIG. 10. However, the ringoscillator circuit 509 can include additional pairs of oscillatorelements 705 and resistor devices 709.

In accordance with aspects of the invention, the digital tuning signal523 and the analog tuning signal 525 modify the frequency of the ringoscillator array 509 simultaneously via the resistor devices 709. Inembodiments, the resistor devices 709 include a voltage-controlledresistance element 713, and two or more switchable resistance elements715 connected in parallel. By modifying the total resistance across theresistor devices 709 based on the digital tuning signal 523 and theanalog tuning signal 525, the switching rate of the respectiveoscillator elements 705 is controlled to tune the oscillation frequency.

In accordance with aspects of the invention, the analog tuning signal525 controls the oscillation frequency of the ring oscillator 509 bymodifying the resistance of the voltage-controlled resistance elements713. In embodiments, the voltage-controlled resistance elements 713 areconfigured to increase in resistance in proportion with the voltage ofthe analog tuning signal 525, which increase the total resistance acrossthe resistor devices 709. In turn, the increased resistance causes adecrease in the switching frequency of the respective inverters 705,which slows the oscillation frequency of the ring oscillator 509.

Additionally, in accordance with aspects of the invention, the digitalcontrol logic 707 modifies the resistances of the resistor devices 709.In embodiments, each resistor device 709 includes a number of switchableresistance elements 715 connected in parallel, wherein digital controlcan be used to selectively switch on/off the switchable resistanceelements 715. Thus, the by changing the number of switchable resistanceelements 715 in the forward path 710, the total resistance of theswitchable resistance elements 715 in each of the resistor devices 709can be controlled. In embodiments, each of the switchable resistanceelements 715 has the same resistance value such that, for each one addedin parallel, the total resistance of the resistor device decreases. Forexample, resistors R0 . . . Rn can have the same resistance.Alternatively, each the switchable resistance elements 715 can havedifferent a resistance value. For example, resistors R0 . . . Rn canhave progressively greater resistance values.

In accordance with aspects of the invention, the digital control logic707 selectively activates or deactivates the switchable resistorelements 715 based on the digital tuning signal 523. In embodiments, thedigital control logic 707 is a device including hardware, software, or acombination thereof that determines whether to activate or deactivateindividual ones of the switchable resistance elements 715 in theresistor devices 709. For example, the digital control logic 707 caninclude logic that interprets one or more digital logic signals in thedigital tuning signal 523 and, based on the determination, selectivelyactivates the switchable resistance elements 715. More specifically,embodiments of the digital control logic 707 can receive one or morevalues via the digital tuning signal 523 indicating a phase difference(e.g., between reference signal 115 and feedback signal 119) andselectively activate the switchable resistance elements 715 to increaseor decrease the frequency of the ring oscillator 509 accordingly.

In embodiments, each resistor R0 . . . Rn in the resistor devices 709 isconnected in series with a respective switch S0 . . . Sn that can becontrolled to switch on/off by the digital control logic 707. Forexample, the switches S0 . . . Sn can have addresses by which they canbe selectively activated/deactivated by the digital control logic 707.Thus, based on the digital tuning signal 523, the digital control logic707 can selectively activate each resistor R0 . . . Rn to include themin the forward path 710. For example, the digital control logic 707 canselectively active the first two resistor elements R0 and R1 andselectively deactivate resistors R2 . . . Rn in each resistor device 709using their respective switches S0 . . . Sn.

By modifying the resistance of the ring oscillator circuit 509, theanalog tuning signal 525 and the digital tuning signal 523 modify thefrequency of oscillation. That is, the lower the resistance, the fasterthe oscillation. As such, by including more switchable resistor elements715 in the path, the frequency of the ring oscillator circuit increases.The switchable resistance elements 715, which include resistors 717 andswitches 719, are exemplary. One or more other elements (e.g.,transistors) that provide the same functionality can be used instead ofresistors 717 and switches 719.

The present invention may be a system, a method, and/or a computerprogram product. The computer program product may include a computerreadable storage medium (or media) having computer readable programinstructions thereon for causing a processor to carry out aspects of thepresent invention.

The computer readable storage medium can be a tangible device that canretain and store instructions for use by an instruction executiondevice. The computer readable storage medium may be, for example, but isnot limited to, an electronic storage device, a magnetic storage device,an optical storage device, an electromagnetic storage device, asemiconductor storage device, or any suitable combination of theforegoing. A non-exhaustive list of more specific examples of thecomputer readable storage medium includes the following: a portablecomputer diskette, a hard disk, a random access memory (RAM), aread-only memory (ROM), an erasable programmable read-only memory (EPROMor Flash memory), a static random access memory (SRAM), a portablecompact disc read-only memory (CD-ROM), a digital versatile disk (DVD),a memory stick, a floppy disk, a mechanically encoded device such aspunch-cards or raised structures in a groove having instructionsrecorded thereon, and any suitable combination of the foregoing. Acomputer readable storage medium, as used herein, is not to be construedas being transitory signals per se, such as radio waves or other freelypropagating electromagnetic waves, electromagnetic waves propagatingthrough a waveguide or other transmission media (e.g., light pulsespassing through a fiber-optic cable), or electrical signals transmittedthrough a wire.

Computer readable program instructions described herein can bedownloaded to respective computing/processing devices from a computerreadable storage medium or to an external computer or external storagedevice via a network, for example, the Internet, a local area network, awide area network and/or a wireless network. The network may comprisecopper transmission cables, optical transmission fibers, wirelesstransmission, routers, firewalls, switches, gateway computers and/oredge servers. A network adapter card or network interface in eachcomputing/processing device receives computer readable programinstructions from the network and forwards the computer readable programinstructions for storage in a computer readable storage medium withinthe respective computing/processing device.

Computer readable program instructions for carrying out operations ofthe present invention may be assembler instructions,instruction-set-architecture (ISA) instructions, machine instructions,machine dependent instructions, microcode, firmware instructions,state-setting data, or either source code or object code written in anycombination of one or more programming languages, including an objectoriented programming language such as Smalltalk, C++ or the like, andconventional procedural programming languages, such as the “C”programming language or similar programming languages. The computerreadable program instructions may execute entirely on the user'scomputer, partly on the user's computer, as a stand-alone softwarepackage, partly on the user's computer and partly on a remote computeror entirely on the remote computer or server. In the latter scenario,the remote computer may be connected to the user's computer through anytype of network, including a local area network (LAN) or a wide areanetwork (WAN), or the connection may be made to an external computer(for example, through the Internet using an Internet Service Provider).In some embodiments, electronic circuitry including, for example,programmable logic circuitry, field-programmable gate arrays (FPGA), orprogrammable logic arrays (PLA) may execute the computer readableprogram instructions by utilizing state information of the computerreadable program instructions to personalize the electronic circuitry,in order to perform aspects of the present invention.

Aspects of the present invention are described herein with reference toflowchart illustrations and/or block diagrams of methods, apparatus(systems), and computer program products according to embodiments of theinvention. It will be understood that each block of the flowchartillustrations and/or block diagrams, and combinations of blocks in theflowchart illustrations and/or block diagrams, can be implemented bycomputer readable program instructions.

These computer readable program instructions may be provided to aprocessor of a general purpose computer, special purpose computer, orother programmable data processing apparatus to produce a machine, suchthat the instructions, which execute via the processor of the computeror other programmable data processing apparatus, create means forimplementing the functions/acts specified in the flowchart and/or blockdiagram block or blocks. These computer readable program instructionsmay also be stored in a computer readable storage medium that can directa computer, a programmable data processing apparatus, and/or otherdevices to function in a particular manner, such that the computerreadable storage medium having instructions stored therein comprises anarticle of manufacture including instructions which implement aspects ofthe function/act specified in the flowchart and/or block diagram blockor blocks.

The computer readable program instructions may also be loaded onto acomputer, other programmable data processing apparatus, or other deviceto cause a series of operational steps to be performed on the computer,other programmable apparatus or other device to produce a computerimplemented process, such that the instructions which execute on thecomputer, other programmable apparatus, or other device implement thefunctions/acts specified in the flowchart and/or block diagram block orblocks.

The flowchart and block diagrams in the Figures illustrate thearchitecture, functionality, and operation of possible implementationsof systems, methods, and computer program products according to variousembodiments of the present invention. In this regard, each block in theflowchart or block diagrams may represent a module, segment, or portionof instructions, which comprises one or more executable instructions forimplementing the specified logical function(s). In some alternativeimplementations, the functions noted in the block may occur out of theorder noted in the figures. For example, two blocks shown in successionmay, in fact, be executed substantially concurrently, or the blocks maysometimes be executed in the reverse order, depending upon thefunctionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts or carry out combinations of special purpose hardwareand computer instructions.

FIGS. 11 and 12 show exemplary process flows for performing aspects ofthe present invention. The steps of FIGS. 11 and 12 can be implementedin the circuits of FIGS. 3-10.

The flowcharts in FIGS. 11 and 12 illustrate the architecture,functionality, and operation of possible implementations of systems,methods, and computer program products according to various embodimentsof the present invention. In this regard, each block in the flowchart orblock diagrams may represent a module, segment, or portion of code,which includes one or more executable instructions for implementing thespecified logical function(s). It should also be noted that, in somealternative implementations, the functions noted in the block may occurout of the order noted in the figures. For example, two blocks shown insuccession may, in fact, be executed substantially concurrently, or theblocks may sometimes be executed in the reverse order, depending uponthe functionality involved. It will also be noted that each block of theblock diagrams and/or flowchart illustration, and combinations of blocksin the block diagrams and/or flowchart illustration, can be implementedby special purpose hardware-based systems that perform the specifiedfunctions or acts, or combinations of special purpose hardware andcomputer instructions.

FIG. 11 depicts an exemplary flow of a process 1100 for controlling theoscillation frequency of a ring oscillator (e.g., hybrid ringoscillators 311 and 509) in accordance with embodiments of theinvention. In embodiments, a hybrid ring oscillator circuit (e.g.,hybrid ring oscillator circuits 300 and 500) can include a digital path(e.g., digital paths 117 and 501), an analog path (e.g., analog paths305 and 503), and a feedback path (e.g., feedback paths 127 and 505)that modify the oscillation frequency of a ring oscillator array (e.g.,ring oscillator arrays 317 and 555) based on a phase difference signal.As detailed previously, the digital path provides a digital phasedifference signal (e.g., digital tuning signal 523) whose voltageindicates whether a reference signal (e.g., reference signal 115) leadsor lags a feedback signal (e.g., feedback signal 119) from the feedbackpath. The analog path provides an analog phase difference signal (e.g.,analog tuning signal 525) whose voltage also indicates whether areference signal (e.g., reference signal 115) leads or lags a feedbacksignal (e.g., feedback signal 119) from the feedback path.

In accordance with aspects of the invention, control logic (e.g., analogcontrol logic 313 or digital control logic 547) actively controls a fillfactor of the ring oscillator array based on the phase differencesignal. In embodiments, the control logic (e.g., analog control logic313) controls the fill factor based on the analog phase differencesignal. In other embodiments, the control logic (e.g., integral digitallogic bus 547) controls the fill factor based on the digital phasedifference signal. After the process 1100 starts, at step 1103, thecontrol logic receives the phase difference signal. At step 1107, thedevice and/or software determine whether to increase or decrease thefill factor of the ring oscillator array based on the phase differencesignal received at step 1103. For example, the control logic can comparethe phase difference signal to one or more predetermined value stored ina memory device (e.g., a lookup table). Based on the comparison, thecontrol logic determines whether to increase or decrease a current fillfactor of the ring oscillator array. For example, if the control logicdetermines that the phase difference signal is less than a firstthreshold value, then the control logic can increase the fill factor toincrease the oscillation frequency of the ring oscillator array. If thecontrol logic determines that the phase difference is greater than asecond threshold value, then the control log can decrease theoscillation frequency of the ring oscillator array. If the control logicdetermines that the phase difference is between the first and secondthreshold values, then it can determine not to change the oscillationfrequency.

If the control logic determines not to change the oscillation frequencyat step 1107 (i.e., “No”), then the process 1100 iteratively returns tostep 1103 without changing the oscillation frequency of the ringoscillator array. If the control logic determines to change theoscillation frequency at step 1107 (i.e., “Yes”), then the process 1100increases/decreases the number of active oscillation elements (e.g.,oscillation elements 319 and 559) in the ring oscillator array at step1111. For example, the ring oscillator array progressivelyactivates/deactivates inverters in the ring oscillator array toincrease/decrease the oscillation frequency, respectively. Inembodiments, the fill factor is increased or decreased by activating ordeactivating one or more rows of inverters (e.g., oscillator elements559) in the ring oscillator array. For example, a first row of inverterscan be active if the feedback signal lags the reference signal toincrease the fill factor and, accordingly, the oscillation frequency. Ifthe first row is already active, then next row can be activated.Subsequently, the process 1100 iteratively returns to step 1103.

FIG. 12 depicts an exemplary flow of a process 1200 for controlling anoscillation frequency of a ring oscillator (e.g., ring oscillator 509)in accordance with embodiments of the invention. In embodiments, ahybrid ring oscillator circuit (e.g., hybrid ring oscillator circuit500) can include a digital path (e.g., digital path 501), an analog path(e.g., analog path 503), and a feedback path (e.g., feedback path 505)that modify the oscillation frequency of the ring oscillator based on aphase difference signal. In accordance with aspects of the invention,control logic (e.g., digital control logic 707) modifies the resistancein a forward path (e.g., forward path 710) of the ring oscillator basedon the phase difference signal. In embodiments, the control logicmodifies the resistance based on the digital phase difference signal.After the process 1200 starts, at step 1203, the control logic receivesthe phase difference signal. At step 1207, the device and/or softwaredetermine whether to increase or decrease the resistance of the ringoscillator based on the phase difference signal received at step 1203.For example, the control logic can compare the phase difference signalto one or more predetermined value stored in a memory device (e.g., alookup table). Based on the comparison, the control logic determineswhether to increase or decrease a current resistance of resistor devices(e.g., resistor devices 709) in the ring oscillator. For example, if thecontrol logic determines that the phase difference signal is less than afirst threshold value, then the control logic can decrease the totalresistance of the resistor devices to increase the oscillation frequencyof oscillation elements (e.g., oscillation elements 705) in the ringoscillator. If the control logic determines that the phase differencesignal is greater than a first threshold value, then the control logiccan increase the total resistance of the resistor devices to decreasethe oscillation frequency of oscillation elements in the ringoscillator. If the control logic determines that the phase difference isbetween the first and second threshold values, then it can determine notto change the oscillation frequency.

If the control logic determines not to change the current resistance atstep 1207 (i.e., “No”), then the process 1200 iteratively returns tostep 1203 without changing the oscillation frequency of the ringoscillator. If the control logic determines to change the currentresistance at step 1207 (i.e., “Yes”), then the process 1200increases/decreases the resistance of the resistor devices included inthe forward path of the ring oscillator at step 1211. For example, thecontrol logic progressively activates/deactivates resistor elements(e.g., resistor elements R0 . . . Rn) using by activating/deactivatingswitches (e.g., switch elements S0 . . . Sn) in the ring oscillator toincrease/decrease the oscillation frequency, respectively. Subsequently,the process 1100 iteratively returns to step 1103.

FIG. 13 is a flow diagram of a design process used in semiconductordesign, manufacture, and/or test. FIG. 13 shows a block diagram of anexemplary design flow 1300 used for example, in semiconductor IC logicdesign, simulation, test, layout, and manufacture. Design flow 1300includes processes, machines and/or mechanisms for processing designstructures or devices to generate logically or otherwise functionallyequivalent representations of the design structures and/or devicesdescribed above and shown in FIGS. 3-10. The design structures processedand/or generated by design flow 1300 may be encoded on machine-readabletransmission or storage media to include data and/or instructions thatwhen executed or otherwise processed on a data processing systemgenerate a logically, structurally, mechanically, or otherwisefunctionally equivalent representation of hardware components, circuits,devices, or systems. Machines include, but are not limited to, anymachine used in an IC design process, such as designing, manufacturing,or simulating a circuit, component, device, or system. For example,machines may include: lithography machines, machines and/or equipmentfor generating masks (e.g., e-beam writers), computers or equipment forsimulating design structures, any apparatus used in the manufacturing ortest process, or any machines for programming functionally equivalentrepresentations of the design structures into any medium (e.g. a machinefor programming a programmable gate array).

Design flow 1300 may modify depending on the type of representationbeing designed. For example, a design flow 1300 for building anapplication specific IC (ASIC) may differ from a design flow 1300 fordesigning a standard component or from a design flow 1300 forinstantiating the design into a programmable array, for example aprogrammable gate array (PGA) or a field programmable gate array (FPGA)offered by Altera® Inc. or Xilinx® Inc.

FIG. 13 illustrates multiple such design structures including an inputdesign structure 1320 that is preferably processed by a design process1310. Design structure 1320 may be a logical simulation design structuregenerated and processed by design process 1310 to produce a logicallyequivalent functional representation of a hardware device. Designstructure 1320 may also or alternatively comprise data and/or programinstructions that when processed by design process 1310, generate afunctional representation of the physical structure of a hardwaredevice. Whether representing functional and/or structural designfeatures, design structure 1320 may be generated using electroniccomputer-aided design (ECAD) such as implemented by a coredeveloper/designer. When encoded on a machine-readable datatransmission, gate array, or storage medium, design structure 1320 maybe accessed and processed by one or more hardware and/or softwaremodules within design process 1310 to simulate or otherwise functionallyrepresent an electronic component, circuit, electronic or logic module,apparatus, device, or system such as those shown in FIGS. 3-10. As such,design structure 1320 may comprise files or other data structuresincluding human and/or machine-readable source code, compiledstructures, and computer-executable code structures that when processedby a design or simulation data processing system, functionally simulateor otherwise represent circuits or other levels of hardware logicdesign. Such data structures may include hardware-description language(HDL) design entities or other data structures conforming to and/orcompatible with lower-level HDL design languages such as Verilog andVHDL, and/or higher level design languages such as C or C++.

Design process 1310 preferably employs and incorporates hardware and/orsoftware modules for synthesizing, translating, or otherwise processinga design/simulation functional equivalent of the components, circuits,devices, or logic structures shown in FIGS. 3-10 to generate a netlist1380 which may contain design structures such as design structure 1320.Netlist 1380 may comprise, for example, compiled or otherwise processeddata structures representing a list of wires, discrete components, logicgates, control circuits, I/O devices, models, etc. that describes theconnections to other elements and circuits in an integrated circuitdesign. Netlist 1380 may be synthesized using an iterative process inwhich netlist 1380 is resynthesized one or more times depending ondesign specifications and parameters for the device. As with otherdesign structure types described herein, netlist 1380 may be recorded ona machine-readable data storage medium or programmed into a programmablegate array. The medium may be a non-volatile storage medium such as amagnetic or optical disk drive, a programmable gate array, a compactflash, or other flash memory. Additionally, or in the alternative, themedium may be a system or cache memory, buffer space, or electrically oroptically conductive devices and materials on which data packets may betransmitted and intermediately stored via the Internet, or othernetworking suitable means.

Design process 1310 may include hardware and software modules forprocessing a variety of input data structure types including netlist1380. Such data structure types may reside, for example, within libraryelements 1330 and include a set of commonly used elements, circuits, anddevices, including models, layouts, and symbolic representations, for agiven manufacturing technology (e.g., different technology nodes, 32 nm,45 nm, 90 nm, etc.). The data structure types may further include designspecifications 1340, characterization data 1350, verification data 1370,design rules 1370, and test data files 1385 which may include input testpatterns, output test results, and other testing information. Designprocess 1310 may further include, for example, standard mechanicaldesign processes such as stress analysis, thermal analysis, mechanicalevent simulation, process simulation for operations such as casting,molding, and die press forming, etc. One of ordinary skill in the art ofmechanical design can appreciate the extent of possible mechanicaldesign tools and applications used in design process 1310 withoutdeviating from the scope and spirit of the invention. Design process1310 may also include modules for performing standard circuit designprocesses such as timing analysis, verification, design rule checking,place and route operations, etc.

Design process 1310 employs and incorporates logic and physical designtools such as HDL compilers and simulation model build tools to processdesign structure 1320 together with some or all of the depictedsupporting data structures along with any additional mechanical designor data (if applicable), to generate a second design structure 1390.

Design structure 1390 resides on a storage medium or programmable gatearray in a data format used for the exchange of data of mechanicaldevices and structures (e.g. information stored in a IGES, DXF,Parasolid XT, JT, DRG, or any other suitable format for storing orrendering such mechanical design structures). Similar to designstructure 1320, design structure 1390 preferably comprises one or morefiles, data structures, or other computer-encoded data or instructionsthat reside on transmission or data storage media and that whenprocessed by an ECAD system generate a logically or otherwisefunctionally equivalent form of one or more of the embodiments of theinvention shown in FIGS. 3-10. In one embodiment, design structure 1390may comprise a compiled, executable HDL simulation model thatfunctionally simulates the devices shown in FIGS. 3-10.

Design structure 1390 may also employ a data format used for theexchange of layout data of integrated circuits and/or symbolic dataformat (e.g. information stored in a GDSII (GDS2), GL1, OASIS, mapfiles, or any other suitable format for storing such design datastructures). Design structure 1390 may comprise information such as, forexample, symbolic data, map files, test data files, design contentfiles, manufacturing data, layout parameters, wires, levels of metal,vias, shapes, data for routing through the manufacturing line, and anyother data required by a manufacturer or other designer/developer toproduce a device or structure as described above and shown in FIGS.3-10. Design structure 1390 may then proceed to a stage 1395 where, forexample, design structure 1390: proceeds to tape-out, is released tomanufacturing, is released to a mask house, is sent to another designhouse, is sent back to the customer, etc.

The method as described above is used in the fabrication of integratedcircuit chips. The resulting integrated circuit chips can be distributedby the fabricator in raw wafer form (that is, as a single wafer that hasmultiple unpackaged chips), as a bare die, or in a packaged form. In thelatter case the chip is mounted in a single chip package (such as aplastic carrier, with leads that are affixed to a motherboard or otherhigher level carrier) or in a multichip package (such as a ceramiccarrier that has either or both surface interconnections or buriedinterconnections). In any case the chip is then integrated with otherchips, discrete circuit elements, and/or other signal processing devicesas part of either (a) an intermediate product, such as a motherboard, or(b) an end product. The end product can be any product that includesintegrated circuit chips, ranging from toys and other low-endapplications to advanced computer products having a display, a keyboardor other input device, and a central processor.

The descriptions of the various embodiments of the present inventionhave been presented for purposes of illustration, but are not intendedto be exhaustive or limited to the embodiments disclosed. Manymodifications and variations will be apparent to those of ordinary skillin the art without departing from the scope and spirit of the describedembodiments. The terminology used herein was chosen to best explain theprinciples of the embodiments, the practical application or technicalimprovement over technologies found in the marketplace, or to enableothers of ordinary skill in the art to understand the embodimentsdisclosed herein.

What is claimed:
 1. A phase locked loop circuit, comprising: a controllogic which converts a digital tuning signal or an analog tuning signalinto a plurality of control signals going into select rows of aplurality of rows of selectively controllable oscillator elements forselective control of the selectively controllable oscillator elements.2. The phase locked loop circuit of claim 1, further comprising a mixedmode controlled ring oscillator which receives the digital tuning signaland the analog tuning signal and comprises an array of the selectivelycontrollable oscillator elements arranged in the plurality of rows. 3.The phase locked loop circuit of claim 2, wherein the digital tuningsignal is supplied from a digital path and the analog tuning signal issupplied from an analog path.
 4. The phase locked loop circuit of claim3, wherein the mixed mode controlled ring oscillator has differentinputs, with an input connected to the digital path and another inputconnected to the analog path.
 5. The phase locked loop circuit of claim3, wherein the digital path and the analog path modify a frequency ofthe mixed mode controlled ring oscillator simultaneously.
 6. The phaselocked loop circuit of claim 3, wherein the digital path discretelycontrols a frequency of the mixed mode controlled ring oscillator andthe analog path progressively controls a frequency of the mixed modecontrolled ring oscillator.
 7. The phase locked loop circuit of claim 3,wherein the analog path includes a linear phase detector.
 8. The phaselocked loop circuit of claim 2, wherein the selectively controllableoscillator elements are inverters.
 9. The phase locked loop circuit ofclaim 8, wherein the inverters are stacked inverters.
 10. The phaselocked loop circuit of claim 2, wherein the control logic changes afrequency at which the mixed mode controlled ring oscillator oscillates.11. The phase locked loop circuit of claim 2, wherein the control logicchanges a fill factor which is a ratio of active selectivelycontrollable oscillator elements to a total number of selectivelycontrollable oscillator elements.